package com.hwadee.ems.service;

import com.hwadee.ems.domain.dto.PageQuery;
import com.hwadee.ems.domain.dto.Result;
import com.hwadee.ems.domain.po.Exam;
import com.hwadee.ems.domain.vo.ExamVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 考试 服务类
 * </p>
 *
 * @author EnosElinsa
 * @since 2024/06/21
 */
public interface IExamService extends IService<Exam> {

    Result<IPage<ExamVO>> page(
        PageQuery pageQuery, 
        String courseName,
        String classroomName,
        String className
    );

    Result<IPage<ExamVO>> pageByInvigilatorId(
        PageQuery pageQuery, 
        Long invigilatorId, 
        String courseName,
        String classroomName,
        String className
    );

    Result<IPage<ExamVO>> pageByStudentId(
        PageQuery pageQuery, 
        Long studentId, 
        String courseName, 
        String classroomName,
        String className
    );

}
